In modern computing systems which process digital signals including media data, such as electronic image data, there is an increased need to reduce the size of the electronic media representation, particularly for transmission and storage purposes. Accordingly, various image compression and decompression techniques have been developed. A number of such techniques involve linear transformation of the image data, followed by quantization and coding of transform coefficients. In this way, the quantized and coded data may be compressed, transmitted or stored, and subsequently decompressed using an inverse set of operations. The decompression is generally performed by a media decoder.
Media data may be stored using any of a number of known file formats. For example, electronic image data may be stored using JPEG (Joint Photographic Experts Group), PNG (Portable Network Graphics), TIFF (Tagged Image File Format), or other image file formats. A computing system tasked with decoding media data may include a dedicated hardware media decoder capable of decoding media data stored in a particular file format, such as JPEG. Media data stored in file formats for which the computing system does not have hardware support may be decoded using software instructions executed by a processor in the computing system. Generally, in computing systems having a hardware media decoder, it is preferable to use the hardware media decoder to decode the media data if possible because of enhanced performance characteristics, including the speed of the decompression process.
In a computing system, an application running on the computing system may make a request to decode a piece of media data. The application specifies how the media data should be decoded and the computing system relies on the request to determine whether to use a hardware media decoder or to decode the media data using software. Conventional computing systems do not have the capability to intelligently optimize the media data decompression based on various factors that may affect the efficiency of the decompression.